package com.atomscat.lottery.entity.db;

import com.google.gson.annotations.SerializedName;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.Id;
import jakarta.persistence.SequenceGenerator;
import lombok.Getter;
import lombok.Setter;
import org.springframework.data.jpa.domain.AbstractAuditable;
import org.springframework.lang.Nullable;

import java.io.Serializable;

@Setter
@Getter
@Entity(name = "lottery_user")
public class LotteryUserEntity implements Serializable {
    @Id
    @GeneratedValue
    @Nullable
    private Long id;
//    appid VARCHAR(64) NOT NULL COMMENT '公众号的唯一标识',
    private String appid;
//    openid VARCHAR(64) NOT NULL UNIQUE COMMENT '用户唯一标识',
    private String openid;
//    unionid VARCHAR(64) DEFAULT NULL COMMENT '多个公众号之间的唯一标识（需绑定开放平台）',
    private String unionid;
//    nickname VARCHAR(100) DEFAULT NULL,
    private String nickname;
//    sex TINYINT DEFAULT 0 COMMENT '0-未知 1-男 2-女',
    private String sex;
//    language VARCHAR(10) DEFAULT NULL,
    private String language;
//    city VARCHAR(50) DEFAULT NULL,
    private String city;
//    province VARCHAR(50) DEFAULT NULL,
    private String province;
//    country VARCHAR(50) DEFAULT NULL,
    private String country;
//    headimgurl VARCHAR(255) DEFAULT NULL COMMENT '头像地址',
    private String headimgurl;
//    subscribe TINYINT DEFAULT 1 COMMENT '1-已关注 0-取消关注',
    private String subscribe;
//    subscribe_time DATETIME DEFAULT NULL COMMENT '首次关注时间',
    private String subscribeTime;
//    unsubscribe_time DATETIME DEFAULT NULL COMMENT '取消关注时间',
    private String unsubscribeTime;
//    remark VARCHAR(100) DEFAULT NULL COMMENT '公众号运营者对粉丝的备注',
    private String remark;
//    groupid INT DEFAULT NULL COMMENT '分组ID（已废弃）',
    private String groupid;
//    tagid_list VARCHAR(255) DEFAULT NULL COMMENT '标签ID列表，JSON数组形式',
    private String tagidList;
//    subscribe_scene VARCHAR(50) DEFAULT NULL COMMENT '关注渠道，比如公众号搜索、二维码等',
    private String subscribeScene;
//    qr_scene VARCHAR(50) DEFAULT NULL COMMENT '扫码二维码场景值',
    private String qrScene;
//    qr_scene_str VARCHAR(100) DEFAULT NULL COMMENT '扫码场景描述',
    private String qrSceneStr;
//    last_updated DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    private String lastUpdated;
//    create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    private String createTime;
}
